package pe.com.bbva.pct.dao.impl;

import java.util.ArrayList;
import java.util.List;

import javax.persistence.Query;

import org.springframework.stereotype.Repository;

import pe.com.bbva.pct.domain.DetalleFuente;
import pe.com.bbva.pct.dto.DetalleFuenteDAO;
import pe.com.bbva.pct.util.ConstantesGenerales;

@Repository("detalleFuenteDao")
public class DetalleFuenteDAOImpl extends GeneralDAOImpl<DetalleFuente> implements DetalleFuenteDAO{

	@SuppressWarnings("unchecked")
	@Override
	public List<DetalleFuente> obtenerDetalleFuente(Long idFuente) throws Exception{
		List<DetalleFuente> listaDetalleFuente = new ArrayList<DetalleFuente>();
		try {
			StringBuilder queryString = new StringBuilder();
			queryString.append("SELECT p FROM DetalleFuente p WHERE p.idFuente.idFuente = :pIdFuente AND p.idEstado.idValor = :pIdEstado");
			Query query = em.createQuery(queryString.toString());
			query.setParameter("pIdFuente", idFuente);
			query.setParameter("pIdEstado", ConstantesGenerales.EST_ACTIVO_VALOR_LISTADO);
			listaDetalleFuente = query.getResultList();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return listaDetalleFuente;
	}
	
}
